﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Gnosis.Babel;

namespace Gnosis.SQLite.DateTime
{
    public class DateTimeFormat
        : Expression
    {
        public DateTimeFormat(string name)
            : base(name)
        {
        }

        public static readonly DateTimeFormat YYYY_MM_DD = new DateTimeFormat("YYYY-MM-DD");
        public static readonly DateTimeFormat YYYY_MM_DD_HH_MM = new DateTimeFormat("YYYY-MM-DD HH:MM");
        public static readonly DateTimeFormat YYYY_MM_DD_HH_MM_SS = new DateTimeFormat("YYYY-MM-DD HH:MM:SS");
        public static readonly DateTimeFormat YYYY_MM_DD_HH_MM_SS_SSS = new DateTimeFormat("YYYY-MM-DD HH:MM:SS.SSS");
        public static readonly DateTimeFormat YYYY_MM_DD_T_HH_MM = new DateTimeFormat("YYYY-MM-DDTHH:MM");
        public static readonly DateTimeFormat YYYY_MM_DD_T_HH_MM_SS = new DateTimeFormat("YYYY-MM-DDTHH:MM:SS");
        public static readonly DateTimeFormat YYYY_MM_DD_T_HH_MM_SS_SSS = new DateTimeFormat("YYYY-MM-DDTHH:MM:SS.SSS");
        public static readonly DateTimeFormat HH_MM = new DateTimeFormat("HH:MM");
        public static readonly DateTimeFormat HH_MM_SS = new DateTimeFormat("HH:MM:SS");
        public static readonly DateTimeFormat HH_MM_SS_SSS = new DateTimeFormat("HH:MM:SS.SSS");
        public static readonly DateTimeFormat Now = new DateTimeFormat("now");
        public static readonly DateTimeFormat JulianDayNumber = new DateTimeFormat("DDDDDDDDDD");
    }
}
